<ui:composition xmlns="http://www.w3.org/1999/xhtml"
                xmlns:ui="http://java.sun.com/jsf/facelets"
                xmlns:h="http://java.sun.com/jsf/html"
                xmlns:f="http://java.sun.com/jsf/core"
                xmlns:p="http://primefaces.org/ui" 
                xmlns:c="http://xmlns.jcp.org/jsp/jstl/core"
                template="principalProyecto.xhtml" >
    
<ui:define name="htmlPaso">

    <h:form id="form" > 
    
        <h1>3.1 Importar cuestionarios</h1>

        <p:separator style="width: 100%"/>
        
        <p:growl life="6000" showDetail="true" autoUpdate="true" sticky="false" />
        
        <h:panelGrid columns="1" border="0" style="width: 100%;">
            
            <p:row/>
            <p:outputLabel value="Permite importar y exportar uno o varios cuestionarios" />
            <p:row/>

            <br/>
            
            <p:panel id="pnlImportar" header="Importar cuestionarios" >

                <h:panelGrid columns="1" cellpadding="5" >

                    <p:outputLabel value="Carga y procesa tu archivo excel. Recuerda que no debe haber errores para procesar el archivo." />

                    <p:commandButton value="Descargar modelo de importación" ajax="false" disabled="#{importarCuestionariosView.intIdEstadoProyecto==37}" >
                        <p:fileDownload value="#{importarCuestionariosView.fileImport}" />
                    </p:commandButton>

                    <p:fileUpload widgetVar="inputFile" value="#{importarCuestionariosView.inputFile}" mode="advanced" dragDropSupport="fale" multiple="false" sizeLimit="2000000" allowTypes="/(\.|\/)(xls)$/"  disabled="#{importarCuestionariosView.intIdEstadoProyecto==37}"
                                  cancelLabel="Cancelar" uploadLabel="Subir archivo" label="Buscar archivo XLS" update="pnlImportar" auto="true"
                                  fileUploadListener="#{importarCuestionariosView.cargaCuestionarios}" immediate="true" />

                    <p:dataTable 
                            rendered="#{importarCuestionariosView.lstCuestionariosImportados.size()>0}"
                            id="tblLstCuestionariosImportados"
                            widgetVar="tblLstCuestionariosImportados"
                            rows="10"
                            paginator="true" 
                            var="cue"
                            value="#{importarCuestionariosView.lstCuestionariosImportados}"
                            paginatorPosition="bottom"
                            resizableColumns="true"
                            paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
                            emptyMessage="No se encontró ningun registro :(" >

                        <f:facet name="header">
                            <p:outputLabel value="Lista de cuestionarios" />
                        </f:facet>
                        <f:facet name="footer">
                            En total tiene(s) #{importarCuestionariosView.lstCuestionariosImportados.size()} cuestionario(s).
                        </f:facet>
                        
                        <p:column style="text-align: left;" headerText="Nombre del cuestionario" >
                            <h:outputText value="#{cue.strDescCuestionario}" />
                        </p:column> 
                        
                        <p:column style="text-align: left;" headerText="Elementos del cuestionario" >
                            <p:commandButton icon="ui-icon-search" update=":form" actionListener="#{importarCuestionariosView.verElementos(cue.idCuestionario)}" value="Ver" />
                        </p:column> 

                    </p:dataTable>

                    <p:dataTable 
                                rendered="#{importarCuestionariosView.idCuestionario!=null}"
                                id="tblCuestionarioImportado"
                                var="cues"
                                widgetVar="tblCuestionarioImportado"
                                value="#{importarCuestionariosView.lstElementosDelCuestionarios}" 
                                rows="50"
                                paginator="true" 
                                resizableColumns="true"
                                paginatorPosition="bottom"
                                paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink}"
                                emptyMessage="No se encontró ningun elemento :(" >                 

                        <f:facet name="header">
                            <p:outputLabel value="Lista de elementos del cuestionario #{importarCuestionariosView.strCuestionario}" style="text-align: left;" />
                        </f:facet>  

                        <p:column headerText="Tipo elemento" sortBy="#{cues.strDato1}" >
                            <h:outputText value="#{cues.strDato1}" />
                        </p:column>

                        <p:column headerText="Descripción" sortBy="#{cues.strDato2}" >
                            <h:outputText value="#{cues.strDato2}" />
                        </p:column>

                    </p:dataTable>

                    <p:dataTable 
                            rendered="#{importarCuestionariosView.lstErrores.size()>0}"
                            id="tblLstErrores"
                            widgetVar="tblLstErrores"
                            rows="10"
                            paginator="true" 
                            var="err"
                            value="#{importarCuestionariosView.lstErrores}"
                            paginatorPosition="bottom"
                            resizableColumns="true"
                            paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
                            emptyMessage="No se encontró ningun registro :(" >

                        <f:facet name="header">
                            <p:outputLabel value="Errores encontrados" />
                        </f:facet>

                        <p:column style="text-align: left;" headerText="Nro" >
                            <h:outputText value="#{err.intNum}"/>
                        </p:column> 
                        <p:column style="text-align: left;" headerText="Descripcion" >
                            <h:outputText value="#{err.strDesc}"/>
                        </p:column> 
                        <p:column style="text-align: left;" headerText="Cuestionario" >
                            <h:outputText value="#{err.strCues}"/>
                        </p:column>
                        <p:column style="text-align: left;" headerText="Linea" >
                            <h:outputText value="#{err.strLinea}"/>
                        </p:column>

                    </p:dataTable>
                    
                    <p:commandButton value="Importar todo" disabled="#{!importarCuestionariosView.processOk}" actionListener="#{importarCuestionariosView.guardarImportacion}" update=":form" /> 
                    <p:commandButton value="Volver a la creacion de cuestionarios" actionListener="#{importarCuestionariosView.irCrearCuestionarios}" />
                    
                </h:panelGrid>

            </p:panel>

            <!--
            <p:panel id="pnlExportar" header="Exportar cuestionarios" >

                <h:panelGrid columns="1" cellpadding="5" >
                    <p:outputLabel value="Selecciona los cuestionarios que quieres descargar." />
                    <p:commandButton value="Descargar lista actual" actionListener="#{evaluadosView.generaExcel()}" immediate="true" ajax="false" icon="ui-icon-arrowthickstop-1-s"  >
                        <p:fileDownload value="#{evaluadosView.xlsContent}" />
                    </p:commandButton>
                </h:panelGrid>

            </p:panel>
            -->
        </h:panelGrid>
        
    </h:form>     
    
</ui:define>
</ui:composition>
